name2="allen.smith"
#1.取长度
print(len(name2))
#2.逆序
print(name2[::-1])
#3.查找子串
print(name2.find("it"));
#1.如何找到最后一个。位置
#函数 ==方法 ==功能 ==过程


'''
 1. 有用的人 物 动物 植物 机器 ，有一种能把原材料变成价格后的产品的办法,
在程序中定义函数就是用程序的语言描述现实世界中的功能 过程
一个有意义的函数 有 函数名 参数 和 结果（返回值）以及函数体（过程逻辑）
define一个函数的定义规定了这个函数（功能）如何对参数加工
def 函数名（参数列表）:
return返回值

'''

#函数定义的时候 小括号中的参数叫做形式参数    例（firstnum,sencondnum这两个形式参数）

def add(firstnum,sencondnum):
    result = firstnum + sencondnum
    return result
result = add(2,3)#方法调用的时候 没有方法体（加工参数的具体逻辑）的，只需要提供实际参数
#返回的结果需要用变量来接，儿本次参数的 2 和 3 是实际参数
#所以 当一个固定值流程需要反复执行的时候就需要定义一个函数来调用
print(result)


#橘子称重 大框3近 小狂2近
def calcweight(weight,type):
    realWeight=0#默认结果为0
    if type==1:# = 表示小框
        realWeight=weight-2
    else:
        realWeight=weight-3
    return realWeight
print(calcweight(60,2))


#打折消费

#(price,sex付款价格 性别)
def cost(price,sex):
    finalprice=0.0#（最终价格）
    if sex=="男":
        finalprice=price
    else:
        finalprice=price*0.8
    return finalprice
print(cost(100,"女"))

#______________________________________________________

#名字找姓氏
def getLastName(fullname):
    lastName=""#null空字符串，没有内容
    #找到最后一个点的位置
    reverseName=fullname[::-1]#先把字符串逆序，因为最后一个点的逆序之后永远是第一个点
    #print（reverseName）
    index=reverseName.find(".")#找出逆序之后的第一个点的位置编号
    reverseLasName = reverseName[:index]#驼峰命名法能够更好的表达变量的函数 单词短句首字母大小写
    lastName = reverseLasName[::-1]#lastName等于逆序后的lastName再逆序
    return lastName
print(getLastName("allen.k.ttt.smith"))